<?xml version="1.0" encoding="UTF-8"?>
<databaseChangeLog
        xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog
                      http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-4.3.xsd">
    <changeSet id="17092021-04" author="Alexander Kamyhin">
        <preConditions onFail="MARK_RAN">
            <and>
                <sqlCheck expectedResult="0">
                    SELECT count(*) FROM users;
                </sqlCheck>
            </and>
        </preConditions>
        <comment>Заполнение таблицы "Пользователи" первоначальными данными</comment>
        <sql>
            INSERT INTO users
                (username, email, password, enabled, created, updated)
            VALUES ('admin', 'admin@mhelper.ru',
                    '$2a$12$QS4hLJ9.IsMteiKhKduqXeIf5aLxOEVkxvJPyHWjx2D3heM.udptq', true, now(), now()),
                   ('user', 'user@mhelper.ru',
                    '$2a$12$GC7mTGYCrTItKTwzu9rj7.HfmnPeNFR0lojHl8s58qMHcSZVjiYiK', true, now(), now());
        </sql>
    </changeSet>

    <changeSet id="17092021-05" author="Alexander Kamyhin">
        <preConditions onFail="MARK_RAN">
            <and>
                <sqlCheck expectedResult="0">
                    SELECT count(*) FROM roles;
                </sqlCheck>
            </and>
        </preConditions>
        <comment>Заполнение таблицы "Роли" первоначальными данными</comment>
        <sql>
            INSERT INTO roles
                (rolename, created, updated)
            VALUES ('USER', now(), now()),
                   ('ADMIN', now(), now()),
                   ('CHROME_EXTENSION', now(), now()),
                   ('EMAIL', now(), now()),
                   ('TELEGRAM', now(), now());
        </sql>
    </changeSet>

    <changeSet id="20032022-07" author="BJCreslin">
        <preConditions onFail="MARK_RAN">
            <and>
                <sqlCheck expectedResult="0">
                    SELECT count(*) FROM user_roles;
                </sqlCheck>
            </and>
        </preConditions>
        <comment>Заполнение таблицы "user_roles" тестовыми данными</comment>
        <sql>
            INSERT INTO user_roles
                (user_id, role_id)
            VALUES (1, 2),
                   (2, 1);
        </sql>
    </changeSet>

    <changeSet id="17092021-08" author="Alexander Kamyhin">
        <preConditions onFail="MARK_RAN">
            <and>
                <sqlCheck expectedResult="0">
                    SELECT count(*) FROM procurements;
                </sqlCheck>
            </and>
        </preConditions>
        <comment>Заполнение таблицы "Закупки" тестовыми данными</comment>
        <sql>
            INSERT INTO procurements
            (stage, uin, fz_number, application_deadline, contract_price,
             procedure_type,
             publisher_name,
             restrictions,
             link_on_placement, application_secure, contract_secure,
             object_of,
             last_updated_from_eis, date_time_last_updated, date_of_placement, date_of_auction, created, updated)
            VALUES ('PROCUREMENT_ENDED', '202320000012100320', 615, '2021-09-08 04:00:00', '5127116.82',
                    'ELECTRONIC_AUCTION',
                    'НЕКОММЕРЧЕСКАЯ ОРГАНИЗАЦИЯ "ФОНД КАПИТАЛЬНОГО РЕМОНТА МНОГОКВАРТИРНЫХ ДОМОВ АМУРСКОЙ ОБЛАСТИ"',
                    'Порядок расчётов осуществляется в соответствии с главой 3 Раздела «VI. Проект договора на выполнение работ по капитальному ремонту общего имущества многоквартирного дома',
                    'http://www.rts-tender.ru', 25635.58, 512711.68,
                    'Выполнение работ по капитальному ремонту общего имущества многоквартирного дома, расположенного по адресу: Амурская область, Архаринский район, пгт. Архара, ул. Октябрьская, дом 58 – капитальный ремонт внутридомовых инженерных систем.',
                    '2021-09-17 00:00:00', '2021-09-17 00:00:00', now(), now(), now(), now());
        </sql>
    </changeSet>

    <changeSet id="20032022-09" author="BJCreslin">
        <preConditions onFail="MARK_RAN">
            <and>
                <sqlCheck expectedResult="0">
                    SELECT count(*) FROM users_procurements;
                </sqlCheck>
            </and>
        </preConditions>
        <comment>Заполнение таблицы "users_procurements" тестовыми данными</comment>
        <sql>
            INSERT INTO users_procurements
                (user_id, procurement_id)
            VALUES (2, 1);
        </sql>
    </changeSet>

</databaseChangeLog>